home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / dev / src / GLperf3.12-src.lha / GLperf / TransMap.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-08-01  |  30.8 KB  |  1,168 lines

  1. /*
  2.  * (c) Copyright 1995, Silicon Graphics, Inc.
  3.  * ALL RIGHTS RESERVED
  4.  * Permission to use, copy, modify, and distribute this software for
  5.  * any purpose and without fee is hereby granted, provided that the above
  6.  * copyright notice appear in all copies and that both the copyright notice
  7.  * and this permission notice appear in supporting documentation, and that
  8.  * the name of Silicon Graphics, Inc. not be used in advertising
  9.  * or publicity pertaining to distribution of the software without specific,
  10.  * written prior permission.
  11.  *
  12.  * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
  13.  * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
  14.  * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
  15.  * FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT SHALL SILICON
  16.  * GRAPHICS, INC.  BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
  17.  * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
  18.  * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
  19.  * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
  20.  * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC.  HAS BEEN
  21.  * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
  22.  * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
  23.  * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
  24.  *
  25.  * US Government Users Restricted Rights
  26.  * Use, duplication, or disclosure by the Government is subject to
  27.  * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
  28.  * (c)(1)(ii) of the Rights in Technical Data and Computer Software
  29.  * clause at DFARS 252.227-7013 and/or in similar or successor
  30.  * clauses in the FAR or the DOD or NASA FAR Supplement.
  31.  * Unpublished-- rights reserved under the copyright laws of the
  32.  * United States.  Contractor/manufacturer is Silicon Graphics,
  33.  * Inc., 2011 N.  Shoreline Blvd., Mountain View, CA 94039-7311.
  34.  *
  35.  * Author: John Spitzer, SGI Applied Engineering
  36.  *
  37.  */
  38.  
  39. #if (defined(INC_REASON)) && (INC_REASON == INFO_ITEM_STRUCT)
  40.     GLfloat redScale;
  41.     GLfloat redBias;
  42.     GLfloat greenScale;
  43.     GLfloat greenBias;
  44.     GLfloat blueScale;
  45.     GLfloat blueBias;
  46.     GLfloat alphaScale;
  47.     GLfloat alphaBias;
  48.     int indexShift;
  49.     int indexOffset;
  50.     GLfloat depthScale;
  51.     GLfloat depthBias;
  52.     int mapColor;
  53.     int mapStencil;
  54.     /* You CANNOT REARRANGE these next ten members */
  55.     int itoiMapSize;
  56.     int stosMapSize;
  57.     int itorMapSize;
  58.     int itogMapSize;
  59.     int itobMapSize;
  60.     int itoaMapSize;
  61.     int rtorMapSize;
  62.     int gtogMapSize;
  63.     int btobMapSize;
  64.     int atoaMapSize;
  65. #ifdef GL_EXT_convolution
  66.     GLenum convTarget;
  67.     GLenum convInternalFormat;
  68.     GLint convWidth;
  69.     GLint convHeight;
  70.     GLfloat convRedScale;
  71.     GLfloat convRedBias;
  72.     GLfloat convGreenScale;
  73.     GLfloat convGreenBias;
  74.     GLfloat convBlueScale;
  75.     GLfloat convBlueBias;
  76.     GLfloat convAlphaScale;
  77.     GLfloat convAlphaBias;
  78. #endif
  79. #ifdef GL_SGI_color_matrix
  80.     /* You CANNOT REARRANGE these next 16 members */
  81.     GLfloat cmatrixR0;
  82.     GLfloat cmatrixR1;
  83.     GLfloat cmatrixR2;
  84.     GLfloat cmatrixR3;
  85.     GLfloat cmatrixG0;
  86.     GLfloat cmatrixG1;
  87.     GLfloat cmatrixG2;
  88.     GLfloat cmatrixG3;
  89.     GLfloat cmatrixB0;
  90.     GLfloat cmatrixB1;
  91.     GLfloat cmatrixB2;
  92.     GLfloat cmatrixB3;
  93.     GLfloat cmatrixA0;
  94.     GLfloat cmatrixA1;
  95.     GLfloat cmatrixA2;
  96.     GLfloat cmatrixA3;
  97.     GLfloat cmatrixRedScale;
  98.     GLfloat cmatrixRedBias;
  99.     GLfloat cmatrixGreenScale;
  100.     GLfloat cmatrixGreenBias;
  101.     GLfloat cmatrixBlueScale;
  102.     GLfloat cmatrixBlueBias;
  103.     GLfloat cmatrixAlphaScale;
  104.     GLfloat cmatrixAlphaBias;
  105. #endif
  106. #ifdef GL_SGI_color_table
  107.     int colorTable;
  108.     int colorTableWidth;
  109.     int colorTableInternalFormat;
  110.     int pcColorTable;
  111.     int pcColorTableWidth;
  112.     int pcColorTableInternalFormat;
  113.     int pcmColorTable;
  114.     int pcmColorTableWidth;
  115.     int pcmColorTableInternalFormat;
  116. #endif
  117. #ifdef GL_EXT_histogram
  118.     int histogram;
  119.     int histogramWidth;
  120.     int histogramInternalFormat;
  121.     int histogramSink;
  122.     int minmax;
  123.     int minmaxInternalFormat;
  124.     int minmaxSink;
  125. #endif
  126.     /* Members below this line aren't user settable */
  127.     GLfloat** maps;
  128.  
  129. #elif (defined(INC_REASON)) && (INC_REASON == INFO_ITEM_ARRAY)
  130.     {
  131.         MapColor,
  132.         "PixelMap Color",
  133.         offset(mapColor),
  134.         Enumerated,
  135.         {
  136.             { True,                     "True" },
  137.             { False,                    "False" },
  138.             { End }
  139.         },
  140.         { False }
  141.     },
  142.     {
  143.         MapStencil,
  144.         "PixelMap Stencil",
  145.         offset(mapStencil),
  146.         Enumerated,
  147.         {
  148.             { True,                     "True" },
  149.             { False,                    "False" },
  150.             { End }
  151.         },
  152.         { False }
  153.     },
  154.     {
  155.         RedScale,
  156.         "PixelTransfer Red Scale Factor",
  157.         offset(redScale),
  158.         UnrangedFloatOrInt,
  159.         {
  160.             { NotUsed }
  161.         },
  162.         { NotUsed, 1. }
  163.     },
  164.     {
  165.         RedBias,
  166.         "PixelTransfer Red Bias Factor",
  167.         offset(redBias),
  168.         UnrangedFloatOrInt,
  169.         {
  170.             { NotUsed }
  171.         },
  172.         { NotUsed, 0. }
  173.     },
  174.     {
  175.         GreenScale,
  176.         "PixelTransfer Green Scale Factor",
  177.         offset(greenScale),
  178.         UnrangedFloatOrInt,
  179.         {
  180.             { NotUsed }
  181.         },
  182.         { NotUsed, 1. }
  183.     },
  184.     {
  185.         GreenBias,
  186.         "PixelTransfer Green Bias Factor",
  187.         offset(greenBias),
  188.         UnrangedFloatOrInt,
  189.         {
  190.             { NotUsed }
  191.         },
  192.         { NotUsed, 0. }
  193.     },
  194.     {
  195.         BlueScale,
  196.         "PixelTransfer Blue Scale Factor",
  197.         offset(blueScale),
  198.         UnrangedFloatOrInt,
  199.         {
  200.             { NotUsed }
  201.         },
  202.         { NotUsed, 1. }
  203.     },
  204.     {
  205.         BlueBias,
  206.         "PixelTransfer Blue Bias Factor",
  207.         offset(blueBias),
  208.         UnrangedFloatOrInt,
  209.         {
  210.             { NotUsed }
  211.         },
  212.         { NotUsed, 0. }
  213.     },
  214.     {
  215.         AlphaScale,
  216.         "PixelTransfer Alpha Scale Factor",
  217.         offset(alphaScale),
  218.         UnrangedFloatOrInt,
  219.         {
  220.             { NotUsed }
  221.         },
  222.         { NotUsed, 1. }
  223.     },
  224.     {
  225.         AlphaBias,
  226.         "PixelTransfer Alpha Bias Factor",
  227.         offset(alphaBias),
  228.         UnrangedFloatOrInt,
  229.         {
  230.             { NotUsed }
  231.         },
  232.         { NotUsed, 0. }
  233.     },
  234.     {
  235.         IndexShift,
  236.         "PixelTransfer Index Shift",
  237.         offset(indexShift),
  238.         UnrangedInteger,
  239.         {
  240.             { NotUsed },
  241.         },
  242.         { 0 }
  243.     },
  244.     {
  245.         IndexOffset,
  246.         "PixelTransfer Index Offset",
  247.         offset(indexOffset),
  248.         UnrangedInteger,
  249.         {
  250.             { NotUsed },
  251.         },
  252.         { 0 }
  253.     },
  254.     {
  255.         DepthScale,
  256.         "PixelTransfer Depth Scale Factor",
  257.         offset(depthScale),
  258.         UnrangedFloatOrInt,
  259.         {
  260.             { NotUsed }
  261.         },
  262.         { NotUsed, 1. }
  263.     },
  264.     {
  265.         DepthBias,
  266.         "PixelTransfer Depth Bias Factor",
  267.         offset(depthBias),
  268.         UnrangedFloatOrInt,
  269.         {
  270.             { NotUsed }
  271.         },
  272.         { NotUsed, 0. }
  273.     },
  274.     {
  275.         RtoRMapSize,
  276.         "PixelMap R to R Size",
  277.         offset(rtorMapSize),
  278.         RangedInteger,
  279.         {
  280.             { 1 },
  281.             { 65536 }
  282.         },
  283.         { 1 }
  284.     },
  285.     {
  286.         GtoGMapSize,
  287.         "PixelMap G to G Size",
  288.         offset(gtogMapSize),
  289.         RangedInteger,
  290.         {
  291.             { 1 },
  292.             { 65536 }
  293.         },
  294.         { 1 }
  295.     },
  296.     {
  297.         BtoBMapSize,
  298.         "PixelMap B to B Size",
  299.         offset(btobMapSize),
  300.         RangedInteger,
  301.         {
  302.             { 1 },
  303.             { 65536 }
  304.         },
  305.         { 1 }
  306.     },
  307.     {
  308.         AtoAMapSize,
  309.         "PixelMap A to A Size",
  310.         offset(atoaMapSize),
  311.         RangedInteger,
  312.         {
  313.             { 1 },
  314.             { 65536 }
  315.         },
  316.         { 1 }
  317.     },
  318.     {
  319.         ItoRMapSize,
  320.         "PixelMap I to R Size",
  321.         offset(itorMapSize),
  322.         RangedInteger,
  323.         {
  324.             { 1 },
  325.             { 65536 }
  326.         },
  327.         { 1 }
  328.     },
  329.     {
  330.         ItoGMapSize,
  331.         "PixelMap I to G Size",
  332.         offset(itogMapSize),
  333.         RangedInteger,
  334.         {
  335.             { 1 },
  336.             { 65536 }
  337.         },
  338.         { 1 }
  339.     },
  340.     {
  341.         ItoBMapSize,
  342.         "PixelMap I to B Size",
  343.         offset(itobMapSize),
  344.         RangedInteger,
  345.         {
  346.             { 1 },
  347.             { 65536 }
  348.         },
  349.         { 1 }
  350.     },
  351.     {
  352.         ItoAMapSize,
  353.         "PixelMap I to A Size",
  354.         offset(itoaMapSize),
  355.         RangedInteger,
  356.         {
  357.             { 1 },
  358.             { 65536 }
  359.         },
  360.         { 1 }
  361.     },
  362.     {
  363.         ItoIMapSize,
  364.         "PixelMap I to I Size",
  365.         offset(itoiMapSize),
  366.         RangedInteger,
  367.         {
  368.             { 1 },
  369.             { 65536 }
  370.         },
  371.         { 1 }
  372.     },
  373.     {
  374.         StoSMapSize,
  375.         "PixelMap S to S Size",
  376.         offset(stosMapSize),
  377.         RangedInteger,
  378.         {
  379.             { 1 },
  380.             { 65536 }
  381.         },
  382.         { 1 }
  383.     },
  384.  #ifdef GL_SGI_color_table
  385.     {
  386.         ColorTable,
  387.         "Color Table Enabled",
  388.         offset(colorTable),
  389.         Enumerated,
  390.         {
  391.             { True,                     "True" },
  392.             { False,                    "False" },
  393.             { End }
  394.         },
  395.         { False }
  396.     },
  397.     {
  398.         ColorTableWidth,
  399.         "Color Table Width",
  400.         offset(colorTableWidth),
  401.         RangedInteger,
  402.         {
  403.             { 1 },
  404.             { 65536 }
  405.         },
  406.         { 256 }
  407.     },
  408.     {
  409.         ColorTableInternalFormat,
  410.         "Color Table Internal Format",
  411.         offset(colorTableInternalFormat),
  412.         Enumerated,
  413.         {
  414.             { 1,        "1" },
  415.             { 2,        "2" },
  416.             { 3,        "3" },
  417.             { 4,        "4" },
  418.             { GL_ALPHA,            "GL_ALPHA" },
  419.             { GL_ALPHA4_EXT,        "GL_ALPHA4_EXT" },
  420.             { GL_ALPHA8_EXT,        "GL_ALPHA8_EXT" },
  421.             { GL_ALPHA12_EXT,        "GL_ALPHA12_EXT" },
  422.             { GL_ALPHA16_EXT,        "GL_ALPHA16_EXT" },
  423.             { GL_LUMINANCE,        "GL_LUMINANCE" },
  424.             { GL_LUMINANCE4_EXT,    "GL_LUMINANCE4_EXT" },
  425.             { GL_LUMINANCE8_EXT,    "GL_LUMINANCE8_EXT" },
  426.             { GL_LUMINANCE12_EXT,    "GL_LUMINANCE12_EXT" },
  427.             { GL_LUMINANCE16_EXT,    "GL_LUMINANCE16_EXT" },
  428.             { GL_LUMINANCE_ALPHA,    "GL_LUMINANCE_ALPHA" },
  429.             { GL_LUMINANCE4_ALPHA4_EXT,    "GL_LUMINANCE4_ALPHA4_EXT" },
  430.             { GL_LUMINANCE6_ALPHA2_EXT,    "GL_LUMINANCE6_ALPHA2_EXT" },
  431.             { GL_LUMINANCE8_ALPHA8_EXT,    "GL_LUMINANCE8_ALPHA8_EXT" },
  432.             { GL_LUMINANCE12_ALPHA4_EXT,"GL_LUMINANCE12_ALPHA4_EXT" },
  433.             { GL_LUMINANCE12_ALPHA12_EXT,"GL_LUMINANCE12_ALPHA12_EXT" },
  434.             { GL_LUMINANCE16_ALPHA16_EXT,"GL_LUMINANCE16_ALPHA16_EXT" },
  435.             { GL_INTENSITY_EXT,        "GL_INTENSITY_EXT" },
  436.             { GL_INTENSITY4_EXT,    "GL_INTENSITY4_EXT" },
  437.             { GL_INTENSITY8_EXT,    "GL_INTENSITY8_EXT" },
  438.             { GL_INTENSITY12_EXT,    "GL_INTENSITY12_EXT" },
  439.             { GL_INTENSITY16_EXT,    "GL_INTENSITY16_EXT" },
  440.             { GL_RGB,            "GL_RGB" },
  441.             { GL_RGB2_EXT,        "GL_RGB2_EXT" },
  442.             { GL_RGB4_EXT,        "GL_RGB4_EXT" },
  443.             { GL_RGB5_EXT,        "GL_RGB5_EXT" },
  444.             { GL_RGB5_A1_EXT,        "GL_RGB5_A1_EXT" },
  445.             { GL_RGB8_EXT,        "GL_RGB8_EXT" },
  446.             { GL_RGB10_EXT,        "GL_RGB10_EXT" },
  447.             { GL_RGB10_A2_EXT,        "GL_RGB10_A2_EXT" },
  448.             { GL_RGB12_EXT,        "GL_RGB12_EXT" },
  449.             { GL_RGB16_EXT,        "GL_RGB16_EXT" },
  450.             { GL_RGBA,            "GL_RGBA" },
  451.             { GL_RGBA2_EXT,        "GL_RGBA2_EXT" },
  452.             { GL_RGBA4_EXT,        "GL_RGBA4_EXT" },
  453.             { GL_RGBA8_EXT,        "GL_RGBA8_EXT" },
  454.             { GL_RGBA12_EXT,        "GL_RGBA12_EXT" },
  455.             { GL_RGBA16_EXT,        "GL_RGBA16_EXT" },
  456.             { End }
  457.         },
  458.         { GL_RGBA8_EXT }
  459.     },
  460.  #endif
  461.  #ifdef GL_EXT_convolution
  462.     {
  463.         ConvolutionTarget,
  464.         "Convolution Target",
  465.         offset(convTarget),
  466.         Enumerated,
  467.         {
  468.             { None,                     "None" },
  469.             { GL_CONVOLUTION_1D_EXT,    "GL_CONVOLUTION_1D_EXT" },
  470.             { GL_CONVOLUTION_2D_EXT,    "GL_CONVOLUTION_2D_EXT" },
  471.             { GL_SEPARABLE_2D_EXT,      "GL_SEPARABLE_2D_EXT" },
  472.             { End }
  473.         },
  474.         { None }
  475.     },
  476.     {
  477.         ConvolutionInternalFormat,
  478.         "Convolution Internal Format",
  479.         offset(convInternalFormat),
  480.         Enumerated,
  481.         {
  482.             { GL_LUMINANCE,             "GL_LUMINANCE" },
  483.             { GL_LUMINANCE_ALPHA,       "GL_LUMINANCE_ALPHA" },
  484.             { GL_INTENSITY_EXT,         "GL_INTENSITY_EXT" },
  485.             { GL_RGB,                   "GL_RGB" },
  486.             { GL_RGBA,                  "GL_RGBA" },
  487.             { End }
  488.         },
  489.         { GL_RGBA }
  490.     },
  491.     {
  492.         ConvolutionWidth,
  493.     "Convolution Width",
  494.         offset(convWidth),
  495.         RangedInteger,
  496.         {
  497.             { 1 },
  498.             { 1024 }
  499.         },
  500.         { 3 }
  501.  
  502.     },
  503.     {
  504.         ConvolutionHeight,
  505.     "Convolution Height",
  506.         offset(convHeight),
  507.         RangedInteger,
  508.         {
  509.             { 1 },
  510.             { 1024 }
  511.         },
  512.         { 3 }
  513.  
  514.     },
  515.     {
  516.         ConvolutionRedScale,
  517.         "Convolution Red Scale Factor",
  518.         offset(convRedScale),
  519.         UnrangedFloatOrInt,
  520.         {
  521.             { NotUsed }
  522.         },
  523.         { NotUsed, 1. }
  524.     },
  525.     {
  526.         ConvolutionRedBias,
  527.         "Convolution Red Bias Factor",
  528.         offset(convRedBias),
  529.         UnrangedFloatOrInt,
  530.         {
  531.             { NotUsed }
  532.         },
  533.         { NotUsed, 0. }
  534.     },
  535.     {
  536.         ConvolutionGreenScale,
  537.         "Convolution Green Scale Factor",
  538.         offset(convGreenScale),
  539.         UnrangedFloatOrInt,
  540.         {
  541.             { NotUsed }
  542.         },
  543.         { NotUsed, 1. }
  544.     },
  545.     {
  546.         ConvolutionGreenBias,
  547.         "Convolution Green Bias Factor",
  548.         offset(convGreenBias),
  549.         UnrangedFloatOrInt,
  550.         {
  551.             { NotUsed }
  552.         },
  553.         { NotUsed, 0. }
  554.     },
  555.     {
  556.         ConvolutionBlueScale,
  557.         "Convolution Blue Scale Factor",
  558.         offset(convBlueScale),
  559.         UnrangedFloatOrInt,
  560.         {
  561.             { NotUsed }
  562.         },
  563.         { NotUsed, 1. }
  564.     },
  565.     {
  566.         ConvolutionBlueBias,
  567.         "Convolution Blue Bias Factor",
  568.         offset(convBlueBias),
  569.         UnrangedFloatOrInt,
  570.         {
  571.             { NotUsed }
  572.         },
  573.         { NotUsed, 0. }
  574.     },
  575.     {
  576.         ConvolutionAlphaScale,
  577.         "Convolution Alpha Scale Factor",
  578.         offset(convAlphaScale),
  579.         UnrangedFloatOrInt,
  580.         {
  581.             { NotUsed }
  582.         },
  583.         { NotUsed, 1. }
  584.     },
  585.     {
  586.         ConvolutionAlphaBias,
  587.         "Convolution Alpha Bias Factor",
  588.         offset(convAlphaBias),
  589.         UnrangedFloatOrInt,
  590.         {
  591.             { NotUsed }
  592.         },
  593.         { NotUsed, 0. }
  594.     },
  595.  #endif
  596.  #ifdef GL_SGI_color_table
  597.     {
  598.         PostConvolutionColorTable,
  599.         "Post Convolution Color Table Enabled",
  600.         offset(pcColorTable),
  601.         Enumerated,
  602.         {
  603.             { True,                     "True" },
  604.             { False,                    "False" },
  605.             { End }
  606.         },
  607.         { False }
  608.     },
  609.     {
  610.         PostConvolutionColorTableWidth,
  611.         "Post Convolution Color Table Width",
  612.         offset(pcColorTableWidth),
  613.         RangedInteger,
  614.         {
  615.             { 1 },
  616.             { 65536 }
  617.         },
  618.         { 256 }
  619.     },
  620.     {
  621.         PostConvolutionColorTableInternalFormat,
  622.         "Post Convolution Color Table Internal Format",
  623.         offset(pcColorTableInternalFormat),
  624.         Enumerated,
  625.         {
  626.             { 1,        "1" },
  627.             { 2,        "2" },
  628.             { 3,        "3" },
  629.             { 4,        "4" },
  630.             { GL_ALPHA,            "GL_ALPHA" },
  631.             { GL_ALPHA4_EXT,        "GL_ALPHA4_EXT" },
  632.             { GL_ALPHA8_EXT,        "GL_ALPHA8_EXT" },
  633.             { GL_ALPHA12_EXT,        "GL_ALPHA12_EXT" },
  634.             { GL_ALPHA16_EXT,        "GL_ALPHA16_EXT" },
  635.             { GL_LUMINANCE,        "GL_LUMINANCE" },
  636.             { GL_LUMINANCE4_EXT,    "GL_LUMINANCE4_EXT" },
  637.             { GL_LUMINANCE8_EXT,    "GL_LUMINANCE8_EXT" },
  638.             { GL_LUMINANCE12_EXT,    "GL_LUMINANCE12_EXT" },
  639.             { GL_LUMINANCE16_EXT,    "GL_LUMINANCE16_EXT" },
  640.             { GL_LUMINANCE_ALPHA,    "GL_LUMINANCE_ALPHA" },
  641.             { GL_LUMINANCE4_ALPHA4_EXT,    "GL_LUMINANCE4_ALPHA4_EXT" },
  642.             { GL_LUMINANCE6_ALPHA2_EXT,    "GL_LUMINANCE6_ALPHA2_EXT" },
  643.             { GL_LUMINANCE8_ALPHA8_EXT,    "GL_LUMINANCE8_ALPHA8_EXT" },
  644.             { GL_LUMINANCE12_ALPHA4_EXT,"GL_LUMINANCE12_ALPHA4_EXT" },
  645.             { GL_LUMINANCE12_ALPHA12_EXT,"GL_LUMINANCE12_ALPHA12_EXT" },
  646.             { GL_LUMINANCE16_ALPHA16_EXT,"GL_LUMINANCE16_ALPHA16_EXT" },
  647.             { GL_INTENSITY_EXT,        "GL_INTENSITY_EXT" },
  648.             { GL_INTENSITY4_EXT,    "GL_INTENSITY4_EXT" },
  649.             { GL_INTENSITY8_EXT,    "GL_INTENSITY8_EXT" },
  650.             { GL_INTENSITY12_EXT,    "GL_INTENSITY12_EXT" },
  651.             { GL_INTENSITY16_EXT,    "GL_INTENSITY16_EXT" },
  652.             { GL_RGB,            "GL_RGB" },
  653.             { GL_RGB2_EXT,        "GL_RGB2_EXT" },
  654.             { GL_RGB4_EXT,        "GL_RGB4_EXT" },
  655.             { GL_RGB5_EXT,        "GL_RGB5_EXT" },
  656.             { GL_RGB5_A1_EXT,        "GL_RGB5_A1_EXT" },
  657.             { GL_RGB8_EXT,        "GL_RGB8_EXT" },
  658.             { GL_RGB10_EXT,        "GL_RGB10_EXT" },
  659.             { GL_RGB10_A2_EXT,        "GL_RGB10_A2_EXT" },
  660.             { GL_RGB12_EXT,        "GL_RGB12_EXT" },
  661.             { GL_RGB16_EXT,        "GL_RGB16_EXT" },
  662.             { GL_RGBA,            "GL_RGBA" },
  663.             { GL_RGBA2_EXT,        "GL_RGBA2_EXT" },
  664.             { GL_RGBA4_EXT,        "GL_RGBA4_EXT" },
  665.             { GL_RGBA8_EXT,        "GL_RGBA8_EXT" },
  666.             { GL_RGBA12_EXT,        "GL_RGBA12_EXT" },
  667.             { GL_RGBA16_EXT,        "GL_RGBA16_EXT" },
  668.             { End }
  669.         },
  670.         { GL_RGBA8_EXT }
  671.     },
  672.  #endif
  673.  #ifdef GL_SGI_color_matrix
  674.     {
  675.         ColorMatrixRed0,
  676.         "Color Matrix Red 0",
  677.         offset(cmatrixR0),
  678.         UnrangedFloatOrInt,
  679.         {
  680.             { NotUsed }
  681.         },
  682.         { NotUsed, 1. }
  683.     },
  684.     {
  685.         ColorMatrixRed1,
  686.         "Color Matrix Red 1",
  687.         offset(cmatrixR1),
  688.         UnrangedFloatOrInt,
  689.         {
  690.             { NotUsed }
  691.         },
  692.         { NotUsed, 0. }
  693.     },
  694.     {
  695.         ColorMatrixRed2,
  696.         "Color Matrix Red 2",
  697.         offset(cmatrixR2),
  698.         UnrangedFloatOrInt,
  699.         {
  700.             { NotUsed }
  701.         },
  702.         { NotUsed, 0. }
  703.     },
  704.     {
  705.         ColorMatrixRed3,
  706.         "Color Matrix Red 3",
  707.         offset(cmatrixR3),
  708.         UnrangedFloatOrInt,
  709.         {
  710.             { NotUsed }
  711.         },
  712.         { NotUsed, 0. }
  713.     },
  714.     {
  715.         ColorMatrixGreen0,
  716.         "Color Matrix Green 0",
  717.         offset(cmatrixG0),
  718.         UnrangedFloatOrInt,
  719.         {
  720.             { NotUsed }
  721.         },
  722.         { NotUsed, 0. }
  723.     },
  724.     {
  725.         ColorMatrixGreen1,
  726.         "Color Matrix Green 1",
  727.         offset(cmatrixG1),
  728.         UnrangedFloatOrInt,
  729.         {
  730.             { NotUsed }
  731.         },
  732.         { NotUsed, 1. }
  733.     },
  734.     {
  735.         ColorMatrixGreen2,
  736.         "Color Matrix Green 2",
  737.         offset(cmatrixG2),
  738.         UnrangedFloatOrInt,
  739.         {
  740.             { NotUsed }
  741.         },
  742.         { NotUsed, 0. }
  743.     },
  744.     {
  745.         ColorMatrixGreen3,
  746.         "Color Matrix Green 3",
  747.         offset(cmatrixG3),
  748.         UnrangedFloatOrInt,
  749.         {
  750.             { NotUsed }
  751.         },
  752.         { NotUsed, 0. }
  753.     },
  754.     {
  755.         ColorMatrixBlue0,
  756.         "Color Matrix Blue 0",
  757.         offset(cmatrixB0),
  758.         UnrangedFloatOrInt,
  759.         {
  760.             { NotUsed }
  761.         },
  762.         { NotUsed, 0. }
  763.     },
  764.     {
  765.         ColorMatrixBlue1,
  766.         "Color Matrix Blue 1",
  767.         offset(cmatrixB1),
  768.         UnrangedFloatOrInt,
  769.         {
  770.             { NotUsed }
  771.         },
  772.         { NotUsed, 0. }
  773.     },
  774.     {
  775.         ColorMatrixBlue2,
  776.         "Color Matrix Blue 2",
  777.         offset(cmatrixB2),
  778.         UnrangedFloatOrInt,
  779.         {
  780.             { NotUsed }
  781.         },
  782.         { NotUsed, 1. }
  783.     },
  784.     {
  785.         ColorMatrixBlue3,
  786.         "Color Matrix Blue 3",
  787.         offset(cmatrixB3),
  788.         UnrangedFloatOrInt,
  789.         {
  790.             { NotUsed }
  791.         },
  792.         { NotUsed, 0. }
  793.     },
  794.     {
  795.         ColorMatrixAlpha0,
  796.         "Color Matrix Alpha 0",
  797.         offset(cmatrixA0),
  798.         UnrangedFloatOrInt,
  799.         {
  800.             { NotUsed }
  801.         },
  802.         { NotUsed, 0. }
  803.     },
  804.     {
  805.         ColorMatrixAlpha1,
  806.         "Color Matrix Alpha 1",
  807.         offset(cmatrixA1),
  808.         UnrangedFloatOrInt,
  809.         {
  810.             { NotUsed }
  811.         },
  812.         { NotUsed, 0. }
  813.     },
  814.     {
  815.         ColorMatrixAlpha2,
  816.         "Color Matrix Alpha 2",
  817.         offset(cmatrixA2),
  818.         UnrangedFloatOrInt,
  819.         {
  820.             { NotUsed }
  821.         },
  822.         { NotUsed, 0. }
  823.     },
  824.     {
  825.         ColorMatrixAlpha3,
  826.         "Color Matrix Alpha 3",
  827.         offset(cmatrixA3),
  828.         UnrangedFloatOrInt,
  829.         {
  830.             { NotUsed }
  831.         },
  832.         { NotUsed, 1. }
  833.     },
  834.     {
  835.         ColorMatrixRedScale,
  836.         "Color Matrix Red Scale Factor",
  837.         offset(cmatrixRedScale),
  838.         UnrangedFloatOrInt,
  839.         {
  840.             { NotUsed }
  841.         },
  842.         { NotUsed, 1. }
  843.     },
  844.     {
  845.         ColorMatrixRedBias,
  846.         "Color Matrix Red Bias Factor",
  847.         offset(cmatrixRedBias),
  848.         UnrangedFloatOrInt,
  849.         {
  850.             { NotUsed }
  851.         },
  852.         { NotUsed, 0. }
  853.     },
  854.     {
  855.         ColorMatrixGreenScale,
  856.         "Color Matrix Green Scale Factor",
  857.         offset(cmatrixGreenScale),
  858.         UnrangedFloatOrInt,
  859.         {
  860.             { NotUsed }
  861.         },
  862.         { NotUsed, 1. }
  863.     },
  864.     {
  865.         ColorMatrixGreenBias,
  866.         "Color Matrix Green Bias Factor",
  867.         offset(cmatrixGreenBias),
  868.         UnrangedFloatOrInt,
  869.         {
  870.             { NotUsed }
  871.         },
  872.         { NotUsed, 0. }
  873.     },
  874.     {
  875.         ColorMatrixBlueScale,
  876.         "Color Matrix Blue Scale Factor",
  877.         offset(cmatrixBlueScale),
  878.         UnrangedFloatOrInt,
  879.         {
  880.             { NotUsed }
  881.         },
  882.         { NotUsed, 1. }
  883.     },
  884.     {
  885.         ColorMatrixBlueBias,
  886.         "Color Matrix Blue Bias Factor",
  887.         offset(cmatrixBlueBias),
  888.         UnrangedFloatOrInt,
  889.         {
  890.             { NotUsed }
  891.         },
  892.         { NotUsed, 0. }
  893.     },
  894.     {
  895.         ColorMatrixAlphaScale,
  896.         "Color Matrix Alpha Scale Factor",
  897.         offset(cmatrixAlphaScale),
  898.         UnrangedFloatOrInt,
  899.         {
  900.             { NotUsed }
  901.         },
  902.         { NotUsed, 1. }
  903.     },
  904.     {
  905.         ColorMatrixAlphaBias,
  906.         "Color Matrix Alpha Bias Factor",
  907.         offset(cmatrixAlphaBias),
  908.         UnrangedFloatOrInt,
  909.         {
  910.             { NotUsed }
  911.         },
  912.         { NotUsed, 0. }
  913.     },
  914.  #endif
  915.  #ifdef GL_SGI_color_table
  916.     {
  917.         PostColorMatrixColorTable,
  918.         "Post Color Matrix Color Table Enabled",
  919.         offset(pcmColorTable),
  920.         Enumerated,
  921.         {
  922.             { True,                     "True" },
  923.             { False,                    "False" },
  924.             { End }
  925.         },
  926.         { False }
  927.     },
  928.     {
  929.         PostColorMatrixColorTableWidth,
  930.         "Post Color Matrix Color Table Width",
  931.         offset(pcmColorTableWidth),
  932.         RangedInteger,
  933.         {
  934.             { 1 },
  935.             { 65536 }
  936.         },
  937.         { 256 }
  938.     },
  939.     {
  940.         PostColorMatrixColorTableInternalFormat,
  941.         "Post Color Matrix Color Table Internal Format",
  942.         offset(pcmColorTableInternalFormat),
  943.         Enumerated,
  944.         {
  945.             { 1,        "1" },
  946.             { 2,        "2" },
  947.             { 3,        "3" },
  948.             { 4,        "4" },
  949.             { GL_ALPHA,            "GL_ALPHA" },
  950.             { GL_ALPHA4_EXT,        "GL_ALPHA4_EXT" },
  951.             { GL_ALPHA8_EXT,        "GL_ALPHA8_EXT" },
  952.             { GL_ALPHA12_EXT,        "GL_ALPHA12_EXT" },
  953.             { GL_ALPHA16_EXT,        "GL_ALPHA16_EXT" },
  954.             { GL_LUMINANCE,        "GL_LUMINANCE" },
  955.             { GL_LUMINANCE4_EXT,    "GL_LUMINANCE4_EXT" },
  956.             { GL_LUMINANCE8_EXT,    "GL_LUMINANCE8_EXT" },
  957.             { GL_LUMINANCE12_EXT,    "GL_LUMINANCE12_EXT" },
  958.             { GL_LUMINANCE16_EXT,    "GL_LUMINANCE16_EXT" },
  959.             { GL_LUMINANCE_ALPHA,    "GL_LUMINANCE_ALPHA" },
  960.             { GL_LUMINANCE4_ALPHA4_EXT,    "GL_LUMINANCE4_ALPHA4_EXT" },
  961.             { GL_LUMINANCE6_ALPHA2_EXT,    "GL_LUMINANCE6_ALPHA2_EXT" },
  962.             { GL_LUMINANCE8_ALPHA8_EXT,    "GL_LUMINANCE8_ALPHA8_EXT" },
  963.             { GL_LUMINANCE12_ALPHA4_EXT,"GL_LUMINANCE12_ALPHA4_EXT" },
  964.             { GL_LUMINANCE12_ALPHA12_EXT,"GL_LUMINANCE12_ALPHA12_EXT" },
  965.             { GL_LUMINANCE16_ALPHA16_EXT,"GL_LUMINANCE16_ALPHA16_EXT" },
  966.             { GL_INTENSITY_EXT,        "GL_INTENSITY_EXT" },
  967.             { GL_INTENSITY4_EXT,    "GL_INTENSITY4_EXT" },
  968.             { GL_INTENSITY8_EXT,    "GL_INTENSITY8_EXT" },
  969.             { GL_INTENSITY12_EXT,    "GL_INTENSITY12_EXT" },
  970.             { GL_INTENSITY16_EXT,    "GL_INTENSITY16_EXT" },
  971.             { GL_RGB,            "GL_RGB" },
  972.             { GL_RGB2_EXT,        "GL_RGB2_EXT" },
  973.             { GL_RGB4_EXT,        "GL_RGB4_EXT" },
  974.             { GL_RGB5_EXT,        "GL_RGB5_EXT" },
  975.             { GL_RGB5_A1_EXT,        "GL_RGB5_A1_EXT" },
  976.             { GL_RGB8_EXT,        "GL_RGB8_EXT" },
  977.             { GL_RGB10_EXT,        "GL_RGB10_EXT" },
  978.             { GL_RGB10_A2_EXT,        "GL_RGB10_A2_EXT" },
  979.             { GL_RGB12_EXT,        "GL_RGB12_EXT" },
  980.             { GL_RGB16_EXT,        "GL_RGB16_EXT" },
  981.             { GL_RGBA,            "GL_RGBA" },
  982.             { GL_RGBA2_EXT,        "GL_RGBA2_EXT" },
  983.             { GL_RGBA4_EXT,        "GL_RGBA4_EXT" },
  984.             { GL_RGBA8_EXT,        "GL_RGBA8_EXT" },
  985.             { GL_RGBA12_EXT,        "GL_RGBA12_EXT" },
  986.             { GL_RGBA16_EXT,        "GL_RGBA16_EXT" },
  987.             { End }
  988.         },
  989.         { GL_RGBA8_EXT }
  990.     },
  991.  #endif
  992.  #ifdef GL_EXT_histogram
  993.     {
  994.         Histogram,
  995.         "Histogram Enabled",
  996.         offset(histogram),
  997.         Enumerated,
  998.         {
  999.             { True,                     "True" },
  1000.             { False,                    "False" },
  1001.             { End }
  1002.         },
  1003.         { False }
  1004.     },
  1005.     {
  1006.         HistogramWidth,
  1007.         "Histogram Width",
  1008.         offset(histogramWidth),
  1009.         RangedInteger,
  1010.         {
  1011.             { 1 },
  1012.             { 65536 }
  1013.         },
  1014.         { 256 }
  1015.     },
  1016.     {
  1017.         HistogramInternalFormat,
  1018.         "Histogram Internal Format",
  1019.         offset(histogramInternalFormat),
  1020.         Enumerated,
  1021.         {
  1022.             { GL_ALPHA,            "GL_ALPHA" },
  1023.             { GL_ALPHA4_EXT,        "GL_ALPHA4_EXT" },
  1024.             { GL_ALPHA8_EXT,        "GL_ALPHA8_EXT" },
  1025.             { GL_ALPHA12_EXT,        "GL_ALPHA12_EXT" },
  1026.             { GL_ALPHA16_EXT,        "GL_ALPHA16_EXT" },
  1027.             { GL_LUMINANCE,        "GL_LUMINANCE" },
  1028.             { GL_LUMINANCE4_EXT,    "GL_LUMINANCE4_EXT" },
  1029.             { GL_LUMINANCE8_EXT,    "GL_LUMINANCE8_EXT" },
  1030.             { GL_LUMINANCE12_EXT,    "GL_LUMINANCE12_EXT" },
  1031.             { GL_LUMINANCE16_EXT,    "GL_LUMINANCE16_EXT" },
  1032.             { GL_LUMINANCE_ALPHA,    "GL_LUMINANCE_ALPHA" },
  1033.             { GL_LUMINANCE4_ALPHA4_EXT,    "GL_LUMINANCE4_ALPHA4_EXT" },
  1034.             { GL_LUMINANCE6_ALPHA2_EXT,    "GL_LUMINANCE6_ALPHA2_EXT" },
  1035.             { GL_LUMINANCE8_ALPHA8_EXT,    "GL_LUMINANCE8_ALPHA8_EXT" },
  1036.             { GL_LUMINANCE12_ALPHA4_EXT,"GL_LUMINANCE12_ALPHA4_EXT" },
  1037.             { GL_LUMINANCE12_ALPHA12_EXT,"GL_LUMINANCE12_ALPHA12_EXT" },
  1038.             { GL_LUMINANCE16_ALPHA16_EXT,"GL_LUMINANCE16_ALPHA16_EXT" },
  1039.             { GL_RGB,            "GL_RGB" },
  1040.             { GL_RGB2_EXT,        "GL_RGB2_EXT" },
  1041.             { GL_RGB4_EXT,        "GL_RGB4_EXT" },
  1042.             { GL_RGB5_EXT,        "GL_RGB5_EXT" },
  1043.             { GL_RGB5_A1_EXT,        "GL_RGB5_A1_EXT" },
  1044.             { GL_RGB8_EXT,        "GL_RGB8_EXT" },
  1045.             { GL_RGB10_EXT,        "GL_RGB10_EXT" },
  1046.             { GL_RGB10_A2_EXT,        "GL_RGB10_A2_EXT" },
  1047.             { GL_RGB12_EXT,        "GL_RGB12_EXT" },
  1048.             { GL_RGB16_EXT,        "GL_RGB16_EXT" },
  1049.             { GL_RGBA,            "GL_RGBA" },
  1050.             { GL_RGBA2_EXT,        "GL_RGBA2_EXT" },
  1051.             { GL_RGBA4_EXT,        "GL_RGBA4_EXT" },
  1052.             { GL_RGBA8_EXT,        "GL_RGBA8_EXT" },
  1053.             { GL_RGBA12_EXT,        "GL_RGBA12_EXT" },
  1054.             { GL_RGBA16_EXT,        "GL_RGBA16_EXT" },
  1055.             { End }
  1056.         },
  1057.         { GL_RGBA8_EXT }
  1058.     },
  1059.     {
  1060.         HistogramSink,
  1061.         "Histogram Sink",
  1062.         offset(histogramSink),
  1063.         Enumerated,
  1064.         {
  1065.             { True,                     "True" },
  1066.             { False,                    "False" },
  1067.             { End }
  1068.         },
  1069.         { False }
  1070.     },
  1071.     {
  1072.         Minmax,
  1073.         "Minmax Enabled",
  1074.         offset(minmax),
  1075.         Enumerated,
  1076.         {
  1077.             { True,                     "True" },
  1078.             { False,                    "False" },
  1079.             { End }
  1080.         },
  1081.         { False }
  1082.     },
  1083.     {
  1084.         MinmaxInternalFormat,
  1085.         "Minmax Internal Format",
  1086.         offset(minmaxInternalFormat),
  1087.         Enumerated,
  1088.         {
  1089.             { GL_ALPHA,            "GL_ALPHA" },
  1090.             { GL_ALPHA4_EXT,        "GL_ALPHA4_EXT" },
  1091.             { GL_ALPHA8_EXT,        "GL_ALPHA8_EXT" },
  1092.             { GL_ALPHA12_EXT,        "GL_ALPHA12_EXT" },
  1093.             { GL_ALPHA16_EXT,        "GL_ALPHA16_EXT" },
  1094.             { GL_LUMINANCE,        "GL_LUMINANCE" },
  1095.             { GL_LUMINANCE4_EXT,    "GL_LUMINANCE4_EXT" },
  1096.             { GL_LUMINANCE8_EXT,    "GL_LUMINANCE8_EXT" },
  1097.             { GL_LUMINANCE12_EXT,    "GL_LUMINANCE12_EXT" },
  1098.             { GL_LUMINANCE16_EXT,    "GL_LUMINANCE16_EXT" },
  1099.             { GL_LUMINANCE_ALPHA,    "GL_LUMINANCE_ALPHA" },
  1100.             { GL_LUMINANCE4_ALPHA4_EXT,    "GL_LUMINANCE4_ALPHA4_EXT" },
  1101.             { GL_LUMINANCE6_ALPHA2_EXT,    "GL_LUMINANCE6_ALPHA2_EXT" },
  1102.             { GL_LUMINANCE8_ALPHA8_EXT,    "GL_LUMINANCE8_ALPHA8_EXT" },
  1103.             { GL_LUMINANCE12_ALPHA4_EXT,"GL_LUMINANCE12_ALPHA4_EXT" },
  1104.             { GL_LUMINANCE12_ALPHA12_EXT,"GL_LUMINANCE12_ALPHA12_EXT" },
  1105.             { GL_LUMINANCE16_ALPHA16_EXT,"GL_LUMINANCE16_ALPHA16_EXT" },
  1106.             { GL_RGB,            "GL_RGB" },
  1107.             { GL_RGB2_EXT,        "GL_RGB2_EXT" },
  1108.             { GL_RGB4_EXT,        "GL_RGB4_EXT" },
  1109.             { GL_RGB5_EXT,        "GL_RGB5_EXT" },
  1110.             { GL_RGB5_A1_EXT,        "GL_RGB5_A1_EXT" },
  1111.             { GL_RGB8_EXT,        "GL_RGB8_EXT" },
  1112.             { GL_RGB10_EXT,        "GL_RGB10_EXT" },
  1113.             { GL_RGB10_A2_EXT,        "GL_RGB10_A2_EXT" },
  1114.             { GL_RGB12_EXT,        "GL_RGB12_EXT" },
  1115.             { GL_RGB16_EXT,        "GL_RGB16_EXT" },
  1116.             { GL_RGBA,            "GL_RGBA" },
  1117.             { GL_RGBA2_EXT,        "GL_RGBA2_EXT" },
  1118.             { GL_RGBA4_EXT,        "GL_RGBA4_EXT" },
  1119.             { GL_RGBA8_EXT,        "GL_RGBA8_EXT" },
  1120.             { GL_RGBA12_EXT,        "GL_RGBA12_EXT" },
  1121.             { GL_RGBA16_EXT,        "GL_RGBA16_EXT" },
  1122.             { End }
  1123.         },
  1124.         { GL_RGBA8_EXT }
  1125.     },
  1126.     {
  1127.         MinmaxSink,
  1128.         "Minmax Sink",
  1129.         offset(minmaxSink),
  1130.         Enumerated,
  1131.         {
  1132.             { True,                     "True" },
  1133.             { False,                    "False" },
  1134.             { End }
  1135.         },
  1136.         { False }
  1137.     },
  1138.  #endif
  1139. #else  /* INC_REASON not defined, treat as plain include */
  1140. #ifndef _TransMap_h
  1141. #define _TransMap_h
  1142.  
  1143. #include "General.h"
  1144. #include "Print.h"
  1145. #include "TestName.h"
  1146. #include "PropName.h"
  1147. #include "Global.h"
  1148. #include "AttrName.h"
  1149. #ifdef WIN32
  1150. #include <windows.h>
  1151. #endif
  1152. #include <GL/gl.h>
  1153. #include <GL/glu.h>
  1154. #include "Random.h"
  1155.  
  1156. typedef struct _TransferMap {
  1157. #define INC_REASON INFO_ITEM_STRUCT
  1158. #include "TransMap.h"
  1159. #undef INC_REASON
  1160. } TransferMap, *TransferMapPtr;
  1161.  
  1162. void new_TransferMap(TransferMapPtr);
  1163. void delete_TransferMap(TransferMapPtr);
  1164. int TransferMap__SetState(TransferMapPtr);
  1165.  
  1166. #endif /* file not already included */
  1167. #endif /* INC_REASON not defined */
  1168.